#ifndef __MYSQLDATABASE_H__
#define __MYSQLDATABASE_H__

#include "stdDataBase.h"
#include <mysql/mysql.h>
#include <iostream>

class MysqlDataBase : public StdDataBase
{
public:
    MysqlDataBase(const std::string &host,const std::string&user,const std::string &passwd);
    ~MysqlDataBase();

public:
    /* 连接数据库 */
    bool connectDB(const std::string &connStr) override;

    /* 执行Sql语句(exec) */
    bool executeSql(const std::string &sql) override;

    /* 查询Sql语句(select) */
    QueryResult querySql(const std::string &sql) override;

    /* 关闭数据库连接 */
    void close() override;

private:
    MYSQL *m_conn;
    const char *m_host;
    const char *m_user;
    const char *m_passwd;
};

#endif // __MYSQLDATABASE_H__